Methods and apparatus for automotive drive mode selection

ABSTRACT

Methods, apparatus, and systems for automotive drive mode operation are disclosed. A disclosed method includes receiving information relating to a condition of a vehicle from a vehicle sensor module, comparing the information to a drive mode threshold, and selecting a drive mode change based on the information satisfying the drive mode threshold. The disclosed method also includes sending the drive mode change to a first vehicle operation module, the first vehicle operation module operating at least one other vehicle operation module to adjust vehicle operation based on the drive mode change.

FIELD OF THE DISCLOSURE

This disclosure relates generally to automotive vehicles, and, moreparticularly, to methods and apparatus for automotive drive modeselection.

BACKGROUND

In recent years, vehicles have become more automated with the increasedsophistication of computerized systems. These computerized systems havethe ability to change a state of a vehicle based on changing conditionsaround the vehicle, which are detected by sensors. For example, whileoperating, a computerized system can slow a vehicle approaching anothervehicle too quickly or closely. Additionally, the computerized systemmay vary a vehicle mode based on changing conditions. For example, whenthe vehicle is in stop-and-go traffic, the computerized system maychange to an economy mode to save fuel.

SUMMARY

An example method includes receiving information relating to a conditionof a vehicle from a vehicle sensor module, comparing the information toa drive mode threshold, and selecting a drive mode change based on theinformation satisfying the drive mode threshold. The example method alsoincludes sending the drive mode change to a first vehicle operationmodule, the first vehicle operation module operating at least one othervehicle operation module to adjust vehicle operation based on the drivemode change.

An example apparatus includes a vehicle control unit to receiveinformation relating to a condition of a vehicle from a vehicle sensormodule, compare the information to a drive mode threshold, and select adrive mode change based on the information satisfying the drive modethreshold. The example apparatus also includes the vehicle control unitto send the drive mode change to a first vehicle operation module, thefirst vehicle operation module to operate at least one other vehicleoperation module to adjust vehicle operation based on the drive modechange.

An example non-transitory computer readable medium includes instructionsthat, when executed, cause a processor to, at least receive informationrelating to a condition of a vehicle from a vehicle sensor module,compare the information to a drive mode threshold, and select a drivemode change based on the information satisfying the drive modethreshold. The example non-transitory computer readable medium alsoincludes instructions that, when executed, cause a processor to send thedrive mode change to a first vehicle operation module, the first vehicleoperation module to operate at least one other vehicle operation moduleto adjust vehicle operation based on the drive mode change.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an example automotive vehicle in which the examples disclosedherein may be implemented.

FIG. 2 illustrates an example drive mode selection system that may beused to implement the examples disclosed herein.

FIG. 3 is a flowchart of an example method that may be used to implementthe example drive mode selection system of FIG. 2.

FIG. 4 is a block diagram of an example processor platform capable ofexecuting machine readable instructions to implement the example methodof FIG. 3 and/or the drive mode selection system of FIG. 2.

The figures are not to scale. Wherever possible, the same referencenumbers will be used throughout the drawing(s) and accompanying writtendescription to refer to the same or like parts.

DETAILED DESCRIPTION

Methods and apparatus for automotive drive mode selection are disclosed.Prior techniques for drive mode selection in vehicles include operatinga control knob or selecting a touchscreen feature to operate the vehiclein a certain drive mode. For example, sport vs. winter. Manycomplications can arise when a driver has to manually activate aspecific drive mode by switching to a specific letter or illustration ontheir console screen, knob, or button. For example, if a vehicle isstuck in deep snow and the driver may intuitively select the “snowflake”mode, representative of winter driving, when the “cactus” mode,representative of summer driving, may be more suitable because ofincreased powertrain and braking controls. Not only is it aninconvenience to have to manually switch from drive mode to drive modein varying environmental conditions (e.g., weather conditions, terrain,etc.), but many drivers do not fully understand or even know what eachspecific drive mode does or how each drive mode affects the vehicle incertain driving scenarios. Further, activating a specific drive mode byswitching to a specific illustration limits vehicle operation modules(e.g., engine module, steering module, brakes module, etc.) fromoperating in various drive modes. For example, switching to “cactus”mode switches all of the vehicle operation modules to operate “cactus”mode, but it may be more suitable for a brakes module to be in“snowflake” mode and an engine module to be in “cactus” mode.

Additionally, some automotive companies have computerized systems withpreprogrammed drive modes that operate based on certain conditionsdetected by vehicle sensors. This is problematic because thecomputerized systems with preprogrammed drive modes do not take intoaccount varying conditional needs that fall outside of theirpreprogrammed drive modes. For example, operating different vehicleoperations modules in different drive modes.

The examples disclosed herein enable an actively adapting drive modeselection system of a vehicle by allowing a vehicle operation module tooperate other vehicle operation modules based on information receivedfrom vehicle sensor modules each satisfying a drive mode threshold. Thedrive mode selection system is used for automatically selecting a drivemode for optimal vehicle operation.

In some examples disclosed herein, a vehicle control unit receivesinformation (e.g., weather forecasts, GPS information, braking andacceleration information, etc.) from different vehicle sensor modules toselect a suitable drive mode. In some examples, the vehicle sensormodules may include a vehicle camera, an imbedded modem, and apowertrain module. However, the vehicle sensor modules may include anyof the numerous sensor modules known to those in the art. To assist indetermining a drive mode, the vehicle sensor modules may be equipped todetermine probability scores for certain categories identified by thevehicle control unit. For example, the vehicle camera may process imagesand identify a low number of traffic lights and/or signs, and a lownumber of vehicles. As such, the vehicle camera may calculate aprobability score of 0.9 for an “on the highway” category, indicatingthat there is a 90% probability that the vehicle is traveling on thehighway. Additionally, the other vehicle sensor modules may calculate aprobability score for the same “on the highway” category and send theprobability score information to the vehicle control unit.Alternatively, the vehicle control unit may send a list of N number ofcategories (e.g., weather, traffic, location, acceleration, temperature,etc.) to each of the vehicle sensor modules. The vehicle sensor modulesmay populate the list with a probability score for each category andsend the populated list to the vehicle control unit for a desiredduration (e.g., every 0.5 seconds, every 1.5 second, every 1.5 minute,etc.), for example. Additionally, the vehicle control unit may store theinformation received from the vehicle sensor modules for a desiredperiod of time (e.g., 1 minute, 5 minutes, 1 hour, etc.) to identifypatterns.

To determine an optimal drive mode, the vehicle control unit receivesthe probability scores from the vehicle sensor modules and weighs theprobability scores based on a vehicle sensor module hierarchy. Forexample, the vehicle camera may determine a probability score of 0.3 forthe “on the highway” category, and the imbedded modem may determine aprobability score of 0.9 for the “on the highway” category. For the “onthe highway” category, the imbedded modem sensor may be given moreweight because the imbedded modem uses a GPS system with 99% accuracyfor the “on the highway” category, for example. As such, the vehiclecontrol unit may determine that the vehicle is on the highway.Additionally, the powertrain module may be given more weight foracceleration information over the imbedded modem because the powertrainmodule is directly detecting the vehicle powertrain components. In someexamples, the vehicle control unit may use a combination of all theprobability scores for an individual category.

After the vehicle sensor module information has been weighed, thevehicle control unit compares the probability scores to drive modethresholds to determine a drive mode change. For example, the vehiclecontrol unit may identify that the vehicle is traveling on the highwaywith a steady acceleration at 55 miles per hour (MPH). As such, thevehicle control unit may identify a drive mode change to comfort mode toreduce driver steering efforts. In some examples, the vehicle controlunit may identify that the vehicle is rapidly accelerating. As such, thevehicle control unit may identify a drive mode change to sport mode.Alternatively, the vehicle control unit may identify specific vehicleoperation modules to operate instead of changing the drive mode. Forexample, the vehicle control unit may identify the vehicle isapproaching a crash while operating in economy mode. As such, thevehicle control unit may identify a drive mode change to sport modesteering to assist in avoiding the crash.

To change the drive mode of the vehicle, the vehicle control unit sendsthe drive mode change to a vehicle operation module (e.g., brake module,engine module, steering module, suspension module, transmission module,etc.) to operate other vehicle operation modules to adjust vehicleoperations based on the drive mode change. For ease of description, theexamples disclosed herein will be described using the brake module tooperate other modules. However, any of the vehicle operation modules maybe used to interact with the vehicle control unit. The brake module mayreceive the drive mode change from the vehicle control unit and analysethe drive mode change to determine the operation adjustments to send toeach vehicle operation module. For example, the brake module may receivea drive mode change to a comfort mode. As such, the brake module maymodify brake force, and may send an operation adjustment to the enginemodule to modify engine tune and exhaust noise, the suspension module tomodify ride height, the steering module to modify steering control, andthe transmission module to modify gear change conditions, for example.Once the vehicle operation modules have been adjusted the brake modulemay send output information to the vehicle control unit forverification. In some examples, the vehicle control unit may send averification message to the brake module to continue operating the othervehicle operation modules in the current drive mode or the vehiclecontrol unit may send another drive mode change to the brake module.

A set of drive modes such as manual, comfort, sport, and other modes asused herein are known in the art. These modes are commonly known andwill not be explained in detail in the present disclosure, but it isunderstood that each mode corresponds to respective vehicle suspensionsettings (e.g., stiffness, real-time damping, etc.), accelerationresponse, and steering wheel power assist, engine responsiveness,transmission shifting point, and traction control, as examples.

FIG. 1 is an example automotive vehicle 100 in which the examplesdisclosed herein may be implemented. In the illustrated example of FIG.1, the automotive vehicle 100 includes a network 102, a vehicle camera104, a powertrain module 106, an imbedded modem 108, and a vehiclecontrol unit 110. The automotive vehicle 100 also includes an enginemodule 112, a brakes module 114, a steering module 116, a suspensionmodule 118, and a transmission module 120.

The example network 102 of the illustrated example is a wired orwireless network suitable for communicating information to the imbeddedmodem 108. The example network 102 may be implemented using a local areanetwork and/or a wide area network (e.g., the Internet). However, anytype(s) of past, current, and/or future communication network(s),communication system(s), communication device(s), transmissionmedium(s), protocol(s), technique(s), and/or standard(s) could be usedto communicatively couple the components via any type(s) of past,current, and/or future device(s), technology(ies), and/or method(s),including voice-band modems(s), digital subscriber line (DSL) modem(s),cable modem(s), Ethernet transceiver(s), optical transceiver(s), virtualprivate network (VPN) connection(s), Institute of Electrical andElectronics Engineers (IEEE) 802.11x (e.g., WiFi) transceiver(s), IEEE802.16 (e.g., WiMax), access point(s), access provider network(s), etc.Further, the example network 102 may be implemented by one or acombination(s) of any hardwire network, any wireless network, any hybridhardwire and wireless network, a local area network, a wide areanetwork, a mobile device network, a peer-to-peer network, etc. Forexample, a first network may connect the vehicle 100 to another vehiclein its proximity. As such, the other vehicle may transmit information tothe vehicle 100. For example, the other vehicle may identify icy roadsand determine a drive mode change to “snowflake” mode. The vehicle 100may receive the drive mode change from the other vehicle and change to“snowflake” mode, for example. Alternatively, the other vehicle mayidentify icy roads and send the identification to the vehicle 100.

In the illustrated example, the example vehicle camera 104 is located inthe front of the vehicle 100. However, more than one vehicle camera 104may be utilized and may be located anywhere on the vehicle. The vehiclecamera 104 is utilized to capture and process images of environmentalconditions of the vehicle 100. For example, the vehicle camera 104 maycapture images every half second and process the images to determine howmany vehicles are present, how many traffic signs are present, determineroad terrain (e.g., smooth road, rocky road, pot holes, etc.), determineweather conditions (e.g., snowing, raining, sunny), determine time ofday, etc. Additionally, the vehicle camera 104 determines probabilityscores for categories identified by the vehicle control unit 110. Afterthe vehicle camera 104 determines the probability scores for thecategories, the vehicle camera 104 sends the information to the vehiclecontrol unit 110 for further processing.

The example powertrain module 106 is utilized to determine accelerationinformation from the vehicle 100. The example powertrain module 106 mayutilize various sensor attached to the vehicle powertrain. For example,a vehicle speed sensor, a wheel speed sensor, a throttle sensor, aturbine sensor, a transmission fluid temperature sensor, a kick downswitch, a brake light switch, a traction control system. Additionally,the powertrain module 106 may utilize information from the engine module112 and the transmission module 120. In some examples, the powertrainmodule 106 is a powertrain control module (PCM). During operation, thepowertrain module 106 gathers information from various vehiclepowertrain sensors, determines acceleration information for the vehicle100 and calculates a probability score for the acceleration informationand sends the information to the vehicle control unit 110.

The example imbedded modem 108 communicates with the network 102 togather weather information, location information, and trafficinformation. In some examples, mobile devices may connect to theimbedded modem 108, and the imbedded modem 108 may gather road previewinformation and/or location information from the mobile devices.Additionally, the imbedded modem 108 may gather traffic informationbased on a user selected GPS route. In some examples, the imbedded modem108 may gather information based on the list of categories from thevehicle control unit 110. For example, the vehicle control unit 110 mayidentify categories relating to traffic information. As such, theimbedded modem 108 may collect information relating to trafficinformation. Once the imbedded modem has gathered the necessaryinformation, the imbedded modem 108 calculates a probability score forthe categories identified by the vehicle control unit 110 and sends theinformation to the vehicle control unit 110.

The example vehicle control unit 110 receives the collected informationfrom the vehicle camera 104, the powertrain module 106 and the imbeddedmodem 108 and weighs the probability scores based on a vehicle sensormodule hierarchy. In some examples, the vehicle sensor module hierarchyis programmed into the vehicle control unit 110. The vehicle controlunit 110 takes the weighted probability scores and compares them todrive mode thresholds to determine a drive mode change. For example,vehicle control unit 110 may identify dry weather conditions and curvyroad surfaces ahead from the vehicle camera 104 and the imbedded modem108. As such, the vehicle control unit 110 may identify a drive modechange to sport mode. In some examples, the vehicle control unit 110 maybe programmed with a list of categories necessary to determine a drivemode change. As such, the vehicle control unit 110 may send the list ofcategories to the vehicle camera 104, the powertrain module 106, and theimbedded modem 108 to collect the necessary information to determine adrive mode change. In some examples, the vehicle control unit 110 may beinstalled in a vehicle communications and entertainment system. In someexamples, the vehicle control unit 110 may restrict the driver fromchanging a drive mode.

The example engine module 112 controls a series of actuators on anengine to ensure optimal engine performance. For example, the enginemodule 112 receives a drive mode change and adjusts the engine actuatorsaccordingly. In the illustrated example, the engine is a combustionengine, but any type of engine (e.g., external combustion, internalcombustion engine, electric engine, etc.) may be utilized.

The example brakes module 114 controls the vehicle 100 braking system byadjusting brake actuators and valves based on a drive mode changereceived from the vehicle control unit 110. In the illustrated example,the brake module 114 operates the engine module 112, the steering module116, the suspension module 118, and the transmission module 120 toadjust vehicle operations.

The example steering module 116 controls a series of actuators on thevehicle 100 steering system to ensure optimal steering performance. Forexample, the steering module 116 may receive a drive mode change fromthe brake module 114 and adjust steering actuators accordingly.

The example suspension module 118 controls a series of actuators on thevehicle 100 suspension system to ensure optimal suspension performance.For example, the suspension module 118 may receive a drive mode changefrom the brake module 114 and adjust suspension actuators accordingly.

The example transmission module 120 controls a series of actuators andgears on the vehicle 100 transmission system to ensure optimaltransmission performance. For example, the transmission module 120 mayreceive a drive mode change from the brake module 114 and adjusttransmission actuators and gears accordingly.

In the illustrated example of FIG. 1, the example engine module 112, theexample brakes module 114, the example steering module 116, the examplesuspension module 118, and the example transmission module 120 arelocated at their respective components in the vehicle 100. However, theexample engine module 112, the example brakes module 114, the examplesteering module 116, the example suspension module 118, and the exampletransmission module 120 may be located near the vehicle control unit110. Additionally, the example engine module 112, the example brakesmodule 114, the example steering module 116, the example suspensionmodule 118, and the example transmission module 120 are commonly knownand will not be explained in detail in the present disclosure, but it isunderstood that each module corresponds to respective vehicle suspensionsettings (e.g., stiffness, real-time damping, etc.), accelerationresponse, and steering wheel power assist, engine responsiveness,transmission shifting point, and traction control, as examples.

FIG. 2 illustrates an example drive mode selection system 200 that maybe used to implement the examples disclosed herein. The example drivemode selection system 200 includes the vehicle camera 104, thepowertrain module 106, the imbedded modem 108, the vehicle control unit110, the engine module 112, the brakes module 114, the steering module116, the suspension module 118, and the transmission module 120. Thevehicle camera 104 includes an example image aggregator 202, an exampleimage processor 204, and an example probability scorer 206. Thepowertrain module 106 includes an example powertrain data aggregator 208and an example probability scorer 210. The imbedded modem 108 includesan example external data aggregator 212 and an example probabilityscorer 214. The vehicle control unit 110 includes an example dataanalyzer 216, an example drive mode determiner 218, and an example drivemode verifier 220. The brake module 114 includes an example drive modeanalyzer 222 and an example braking operation adjuster 224. The enginemodule 112 includes an example engine operation adjuster 226. Thesteering module 116 includes an example steering operation adjuster 228.The suspension module 118 includes an example suspension operationadjuster 230. The transmission module 120 includes an exampletransmission operation adjuster 232.

The example image aggregator 202 collects images while the vehicle 100is traveling. The image aggregator 202 may collect images for aspecified period of time (e.g., 0.5 seconds, 1 second, 5 seconds, etc.)and send the images to the image processor 204. The image processor 204processes the images using known image processing techniques to identifyobjects in the images. For example, the image processor 204 may processthe images from the image aggregator 202 to identify road conditions,weather conditions, traffic signs, traffic lights, vehicles in the area,etc. Once the image processor 204 processes the images, the probabilityscorer 206 determines a probability score based on the objectsidentified in the image. For example, the probability scorer 206 may beequipped with thresholds for individual categories. As such, the imageprocessor 204 may identify zero cars in proximity to the vehicle 100 andzero traffics signs or traffic lights in any images, and the probabilityscorer 206 may identify a 0.9 probability score for an “on the highway”category, for example. The probability scorer 206 may populate a list ofcategories specified by the vehicle control unit 110 and send thepopulated list to the vehicle control unit 110 for further processing.

The powertrain data aggregator 208 collects data from sensorsdistributed along the vehicle's 100 powertrain components. Thepowertrain data aggregator 208 collects the powertrain sensor data andthe probability scorer 210 determines a probability score based on thepowertrain sensor data. In some examples, the probability scorer 210 maybe equipped with thresholds for individual categories. For example, theprobability scorer 210 may determine that the powertrain components areoperating the vehicle 100 at 55 MPH with a probability score of 1,indicating a 100% probability. The probability scorer 210 may populate alist of categories specified by the vehicle control unit 110 and sendthe populated list to the vehicle control unit 110 for furtherprocessing.

The external data aggregator 212 collects external data from the network102 relating to weather, traffic, speed, road conditions, etc. Theprobability scorer 214 determines a probability score based on theexternal data collected by the external data aggregator 212. In someexample, the probability scorer 214 is equipped with thresholds forindividual categories. For example, the probability scorer 214 maydetermine that the vehicle 100 is traveling on highway XYZ. As such, theprobability scorer 214 may determine a probability score of 1 for an “onthe highway” category. The probability scorer 214 may populate a list ofcategories specified by the vehicle control unit 110 and send thepopulated list to the vehicle control unit 110 for further processing.

In the illustrated example, the example probability scorer 206, 210, 214are shown in their respective modules. However, the probability scorer206, 210, 214 may be implemented in the vehicle control unit 110.

The example data analyzer 216 receives the populated lists from theprobability scorer 206, 210, 214 and weights the probability scoresbased on a vehicle sensor module hierarchy. For example, the probabilityscores from probability scorer 214 may be given more weight than theprobability scores from probability scorer 206 for an “on the highway”category. As such, the probability scores from the probability scorer214 are used for the “on the highway” category. Additionally, certaincategories may take into account all the probability scores from eachprobability scorer 206, 210, 214 in determining a final probabilityscore. The data analyzer 216 may determine final probabilities for thecategories and forward the final list to the drive mode determiner 218.The drive mode determiner 218 compares the final probability scoresdetermined by the data analyzer 216 to drive mode change thresholds. Forexample, the drive mode determiner 218 may determine from the finalprobability scores that the vehicle 100 is traveling on the highway at55 MPH with zero vehicle in its proximity. As such, the drive modedeterminer 218 may determine a drive mode change to comfort mode, forexample. In some examples, the drive mode determiner 218 may identifythat there is an influx of traffic and heavy stop and go usage and maydetermine a drive mode change to economy mode to save fuel economy. Insome examples, the drive mode determiner 218 may identify weatherinformation indicating rain or snow in the future or vehicle sensormodules may detect precipitation. As such, the drive mode determiner 218may determine a drive mode change to a “snow/wet” mode. In someexamples, the drive mode determiner 218 may identify dry weatherconditions and curvy road surfaces ahead. As such, drive mode determiner218 may determine a drive mode change to sport mode. In some examples,the drive mode determiner 218 may identify that vehicle 100 willmaintain course on a relatively straight highway for an extended periodof time. As such, the drive mode determiner 218 may determine a drivemode change to comfort mode. In some examples, the drive mode determiner218 may identify that the vehicle 100 is stuck in mud or large amountsof snow. As such, drive mode determiner 218 may determine a drive modechange where traction and stability control are disabled to allow wheelspin. In some examples, the drive mode determiner 218 may identifydifficult terrain or poor roads. As such, the drive mode determiner 218may determine a drive mode change to a mode that lightens steeringcontrol, maximizes ground clearance and enables AWD and Hill DescentControl.

The drive mode verifier 220 receives the drive mode change from thedrive mode determiner 218 and verifies the vehicle operation modules(112, 114, 116, 118, 120) are operating in the drive mode change. Forexample, the drive mode verifier 220 receives output information frombrake module 114 indicating operation conditions for the other vehicleoperation modules (112, 116, 118, 120). The drive mode verifier 220compares the operation conditions from the vehicle operation modules(112, 114, 116, 118, 120) to a verification threshold (e.g., the drivemode change from the drive mode determiner 218) and either sends averification message to the brake module 114 indicating the vehicleoperation modules (112, 114, 116, 118, 120) are operating properly, orsends and adjustment message to the brake module 114 indicating whichvehicle operation modules (112, 114, 116, 118, 120) need to be adjustedto operate in the specified drive mode.

The example drive mode analyzer 222 analyzes the drive mode change fromthe drive mode determiner 218 and determines which vehicle operationmodules (112, 114, 116, 118, 120) need to be adjusted to operate in thespecified drive mode. In some examples, the drive mode analyzer 222 isequipped with drive mode operation conditions for each drive modechange. For example, when the drive mode determiner 218 determines adrive mode change to comfort mode, the drive mode analyzer 222 may havespecified operation conditions for comfort mode and may relay thespecified conditions to the braking operation adjuster 224 to adjust theoperation of the brakes of the vehicle 100 to comfort mode, the engineoperation adjuster 226 to adjust operation of the engine of the vehicle100 to comfort mode, the steering operation adjuster 228 to adjust theoperation of the steering system of the vehicle 100 to comfort mode, thesuspension operation adjuster 230 to adjust the operation of thesuspension of the vehicle 100 to comfort mode, and the transmissionoperation adjuster 232 to adjust the transmission of the vehicle 100 tocomfort mode. Once the braking operation adjuster 224, the engineoperation adjuster 226, the steering operation adjuster 228, thesuspension operation adjuster 230, and the transmission operationadjuster 232 have adjusted their respective components, the brake module114 sends output information to the vehicle control unit 110 forverification.

In some examples, the example drive mode analyzer 222 analyzes the drivemode change from the drive mode determiner 218 and determines a drivemode change to comfort/sport/economy mode, the drive mode analyzer 222may have specified operation conditions for comfort/sport/economy modeand may relay the specified conditions to the braking operation adjuster224 to adjust the operation of the brakes of the vehicle 100 to comfortmode, the engine operation adjuster 226 to adjust operation of theengine of the vehicle 100 to sport mode, the steering operation adjuster228 to adjust the operation of the steering system of the vehicle 100 tosport mode, the suspension operation adjuster 230 to adjust theoperation of the suspension of the vehicle 100 to economy mode, and thetransmission operation adjuster 232 to adjust the transmission of thevehicle 100 to comfort mode.

While an example manner of implementing the example vehicle camera 104,the example powertrain module 106, the example imbedded modem 108, theexample vehicle control unit 110, the example engine module 112, theexample brake module 114, the example steering module 116, the examplesuspension module 118, and the example transmission module 120 of theexample vehicle 100 of FIG. 1 is illustrated in FIG. 2, one or more ofthe elements, processes and/or devices illustrated in FIG. 2 may becombined, divided, re-arranged, omitted, eliminated and/or implementedin any other way. Further, the example image aggregator 202, the exampleimage processor 204, the example probability scorer 206, an/or, moregenerally, the example vehicle camera 104, the example powertrain dataaggregator 208, the example probability scorer 210, and/or, moregenerally, the example powertrain module 106, the example external dataaggregator 212, the example probability scorer 214, and/or, moregenerally, the example imbedded modem 108, the example data analyzer216, the example drive mode determiner 218, the example drive modeverifier 220, and/or, more generally, the example vehicle control unit110, the example drive mode analyzer 222, the example braking operationadjuster 224, and/or, more generally, the example brake module 114, theexample engine operation adjuster 226, and/or, more generally, theexample engine module 112, the example steering operation adjuster 228,and/or, more generally, the example steering module 116, the examplesuspension operation adjuster 230, and/or, more generally, the examplesuspension module 118, the example transmission operation adjuster 232,and/or, more generally, the example transmission module 120 may beimplemented by hardware, software, firmware and/or any combination ofhardware, software and/or firmware. Thus, for example, any of theexample image aggregator 202, the example image processor 204, theexample probability scorer 206, an/or, more generally, the examplevehicle camera 104, the example powertrain data aggregator 208, theexample probability scorer 210, and/or, more generally, the examplepowertrain module 106, the example external data aggregator 212, theexample probability scorer 214, and/or, more generally, the exampleimbedded modem 108, the example data analyzer 216, the example drivemode determiner 218, the example drive mode verifier 220, and/or, moregenerally, the example vehicle control unit 110, the example drive modeanalyzer 222, the example braking operation adjuster 224, and/or, moregenerally, the example brake module 114, the example engine operationadjuster 226, and/or, more generally, the example engine module 112, theexample steering operation adjuster 228, and/or, more generally, theexample steering module 116, the example suspension operation adjuster230, and/or, more generally, the example suspension module 118, theexample transmission operation adjuster 232, and/or, more generally, theexample transmission module 120 could be implemented by one or moreanalog or digital circuit(s), logic circuits, programmable processor(s),application specific integrated circuit(s) (ASIC(s)), programmable logicdevice(s) (PLD(s)) and/or field programmable logic device(s) (FPLD(s)).When reading any of the apparatus or system claims of this patent tocover a purely software and/or firmware implementation, at least one ofthe example image aggregator 202, the example image processor 204, theexample probability scorer 206, an/or, more generally, the examplevehicle camera 104, the example powertrain data aggregator 208, theexample probability scorer 210, and/or, more generally, the examplepowertrain module 106, the example external data aggregator 212, theexample probability scorer 214, and/or, more generally, the exampleimbedded modem 108, the example data analyzer 216, the example drivemode determiner 218, the example drive mode verifier 220, and/or, moregenerally, the example vehicle control unit 110, the example drive modeanalyzer 222, the example braking operation adjuster 224, and/or, moregenerally, the example brake module 114, the example engine operationadjuster 226, and/or, more generally, the example engine module 112, theexample steering operation adjuster 228, and/or, more generally, theexample steering module 116, the example suspension operation adjuster230, and/or, more generally, the example suspension module 118, theexample transmission operation adjuster 232, and/or, more generally, theexample transmission module 120 is/are hereby expressly defined toinclude a non-transitory computer readable storage device or storagedisk such as a memory, a digital versatile disk (DVD), a compact disk(CD), a Blu-ray disk, etc. including the software and/or firmware.Further still, the example vehicle camera 104, the example powertrainmodule 106, the example imbedded modem 108, the example vehicle controlunit 110, the example engine module 112, the example brake module 114,the example steering module 116, the example suspension module 118, andthe example transmission module 120 of the example vehicle 100 of FIG. 1may include one or more elements, processes and/or devices in additionto, or instead of, those illustrated in FIG. 2, and/or may include morethan one of any or all of the illustrated elements, processes anddevices.

A flowchart representative of an example method for implementing theexample drive mode selection system 200 of FIG. 2 is shown in FIG. 4. Inthis example, the methods may be implemented using machine readableinstructions comprise a program for execution by a processor such as theprocessor 412 shown in the example processor platform 400 discussedbelow in connection with FIG. 4. The program may be embodied in softwarestored on a non-transitory computer readable storage medium such as aCD-ROM, a floppy disk, a hard drive, a digital versatile disk (DVD), aBlu-ray disk, or a memory associated with the processor 412, but theentire program and/or parts thereof could alternatively be executed by adevice other than the processor 412 and/or embodied in firmware ordedicated hardware. Further, although the example program is describedwith reference to the flowchart illustrated in FIG. 3, many othermethods of implementing the example drive mode selection system 200 mayalternatively be used. For example, the order of execution of the blocksmay be changed, and/or some of the blocks described may be changed,eliminated, or combined. Additionally or alternatively, any or all ofthe blocks may be implemented by one or more hardware circuits (e.g.,discrete and/or integrated analog and/or digital circuitry, a FieldProgrammable Gate Array (FPGA), an Application Specific Integratedcircuit (ASIC), a comparator, an operational-amplifier (op-amp), a logiccircuit, etc.) structured to perform the corresponding operation withoutexecuting software or firmware.

As mentioned above, the example method of FIG. 3 may be implementedusing coded instructions (e.g., computer and/or machine readableinstructions) stored on a non-transitory computer and/or machinereadable medium such as a hard disk drive, a flash memory, a read-onlymemory, a compact disk, a digital versatile disk, a cache, arandom-access memory and/or any other storage device or storage disk inwhich information is stored for any duration (e.g., for extended timeperiods, permanently, for brief instances, for temporarily buffering,and/or for caching of the information). As used herein, the termnon-transitory computer readable medium is expressly defined to includeany type of computer readable storage device and/or storage disk and toexclude propagating signals and to exclude transmission media.“Including” and “comprising” (and all forms and tenses thereof) are usedherein to be open ended terms. Thus, whenever a claim lists anythingfollowing any form of “include” or “comprise” (e.g., comprises,includes, comprising, including, etc.), it is to be understood thatadditional elements, terms, etc. may be present without falling outsidethe scope of the corresponding claim. As used herein, when the phrase“at least” is used as the transition term in a preamble of a claim, itis open-ended in the same manner as the term “comprising” and“including” are open ended.

The example method 300 of FIG. 3 begins when the vehicle 100 beginsoperating/moving and the vehicle camera 104, the powertrain module 106,and the imbedded modem 108 collect data relating to a condition of thevehicle 100 and calculate probability scores for a list of categories.

According to the illustrated example, the data analyzer 216 receivesinformation (block 302). For example, the data analyzer 216 receives theprobability scores from the vehicle camera 104, the powertrain module106, and the imbedded modem 108.

In this example, the data analyzer 216 weighs the information (block304). For example, the data analyzer 216 analyzes the probability scoresbased on a vehicle sensor module hierarchy to calculate finalprobability scores for the list of categories. However, in someexamples, the data analyzer 216 may omit weighting the information andproceed directly to block 306.

In this example, the drive mode determiner 218 determines if theinformation satisfies a threshold (block 306). For example, the drivemode determiner 218 determines if the probability scores from the dataanalyzer 216 satisfy drive mode thresholds (e.g., comfort mode, sportmode, normal mode, etc.). If the information does not satisfy athreshold, the method returns to block 302. If the information doessatisfy a threshold, the drive mode determiner 218 selects a drive modechange (block 308). For example, the drive mode determiner 218 maydetermine that the vehicle 100 is traveling on the highway at 55 MPHwith zero vehicles in its proximity. As such, the drive mode determiner218 may determine a drive mode change to comfort mode, for example.

According to the illustrated example, the drive mode determiner 218sends the drive mode change to a first vehicle operation module (block310). For example, the drive mode determiner 218 may send the drive modechange to the brake module 114. The brake module 114 may operate othervehicle operation modules to adjust vehicle operation conditions (block312). For example, the example drive mode analyzer 222 analyzes thedrive mode change from the drive mode determiner 218 and determineswhich vehicle operation modules (112, 114, 116, 118, 120) need to beadjusted to operate in the specified drive mode.

In this example, the drive mode verifier 220 receives output informationfor vehicle operation condition verification (block 314). In theillustrated example, the drive mode verifier 220 determines if theoutput information satisfies a threshold (block 316). If the informationdoes not satisfy the threshold, the process returns to block 310. If theinformation does satisfy the threshold, the process ends. For example,the drive mode verifier 220 may receive operation condition informationfrom the brake module 114 to determine if the vehicle operation modules(112, 114, 116, 118, 120) are operating in the specified drive mode. Ifthe drive mode verifier 220 determines that any of the vehicle operationmodules are not operating in the specified drive mode, the drive modeverifier 220 may send a message to the brake module 114 to adjustoperation of the vehicle operation modules not operating in thespecified drive mode.

FIG. 4 is a block diagram of an example processor platform 400 capableof executing the instructions of FIG. 3 to implement the example methodof FIG. 3 to implement the example drive mode operation system 200 ofFIG. 2. The processor platform 400 can be, for example, a server, apersonal computer, a mobile device (e.g., a cell phone, a smart phone, atablet such as an iPad™), a personal digital assistant (PDA), anInternet appliance, a DVD player, a CD player, a digital video recorder,a Blu-ray player, a gaming console, a personal video recorder, a set topbox, or any other type of computing device.

The processor platform 400 of the illustrated example includes aprocessor 412. The processor 412 of the illustrated example is hardware.For example, the processor 412 can be implemented by one or moreintegrated circuits, logic circuits, microprocessors or controllers fromany desired family or manufacturer. The hardware processor may be asemiconductor based (e.g., silicon based) device. In this example, theprocessor 1012 implements the example image aggregator 202, the exampleimage processor 204, the example probability scorer 206, an/or, moregenerally, the example vehicle camera 104, the example powertrain dataaggregator 208, the example probability scorer 210, and/or, moregenerally, the example powertrain module 106, the example external dataaggregator 212, the example probability scorer 214, and/or, moregenerally, the example imbedded modem 108, the example data analyzer216, the example drive mode determiner 218, the example drive modeverifier 220, and/or, more generally, the example vehicle control unit110, the example drive mode analyzer 222, the example braking operationadjuster 224, and/or, more generally, the example brake module 114, theexample engine operation adjuster 226, and/or, more generally, theexample engine module 112, the example steering operation adjuster 228,and/or, more generally, the example steering module 116, the examplesuspension operation adjuster 230, and/or, more generally, the examplesuspension module 118, the example transmission operation adjuster 232,and/or, more generally, the example transmission module 120

The processor 412 of the illustrated example includes a local memory 413(e.g., a cache). The processor 412 of the illustrated example is incommunication with a main memory including a volatile memory 414 and anon-volatile memory 416 via a bus 418. The volatile memory 414 may beimplemented by Synchronous Dynamic Random Access Memory (SDRAM), DynamicRandom Access Memory (DRAM), RAMBUS Dynamic Random Access Memory (RDRAM)and/or any other type of random access memory device. The non-volatilememory 416 may be implemented by flash memory and/or any other desiredtype of memory device. Access to the main memory 414, 416 is controlledby a memory controller.

The processor platform 400 of the illustrated example also includes aninterface circuit 420. The interface circuit 420 may be implemented byany type of interface standard, such as an Ethernet interface, auniversal serial bus (USB), and/or a PCI express interface.

In the illustrated example, one or more input devices 422 are connectedto the interface circuit 420. The input device(s) 422 permit(s) a userto enter data and/or commands into the processor 412. The inputdevice(s) can be implemented by, for example, an audio sensor, amicrophone, a camera (still or video), a keyboard, a button, a mouse, atouchscreen, a track-pad, a trackball, isopoint and/or a voicerecognition system.

One or more output devices 424 are also connected to the interfacecircuit 420 of the illustrated example. The output devices 424 can beimplemented, for example, by display devices (e.g., a light emittingdiode (LED), an organic light emitting diode (OLED), a liquid crystaldisplay, a cathode ray tube display (CRT), a touchscreen, a tactileoutput device, a printer and/or speakers). The interface circuit 420 ofthe illustrated example, thus, typically includes a graphics drivercard, a graphics driver chip and/or a graphics driver processor.

The interface circuit 420 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver, amodem and/or network interface card to facilitate exchange of data withexternal machines (e.g., computing devices of any kind) via a network426 (e.g., an Ethernet connection, a digital subscriber line (DSL), atelephone line, coaxial cable, a cellular telephone system, etc.).

The processor platform 400 of the illustrated example also includes oneor more mass storage devices 428 for storing software and/or data.Examples of such mass storage devices 428 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, RAIDsystems, and digital versatile disk (DVD) drives.

Coded instructions 432 to implement the method of FIG. 3 may be storedin the mass storage device 428, in the volatile memory 414, in thenon-volatile memory 416, and/or on a removable tangible computerreadable storage medium such as a CD or DVD.

From the foregoing, it will be appreciated that example methods,apparatus and articles of manufacture enable and actively adapting drivemode operation system that automatically puts the vehicle in the bestmode for optimal control. One advantage over previous solutions is thedrive mode actively adapts on its own to the given environmental andvehicle conditions. This is beneficial to reduce driver distraction aswell as increase efficiency and safety in autonomous vehicles.

Although certain example methods, apparatus and articles of manufacturehave been disclosed herein, the scope of coverage of this patent is notlimited thereto. On the contrary, this patent covers all methods,apparatus and articles of manufacture fairly falling within the scope ofthe claims of this patent.

What is claimed is:
 1. A method comprising: receiving informationrelating to a condition of a vehicle from a vehicle sensor module;comparing the information to a drive mode threshold; selecting a drivemode change based on the information satisfying the drive modethreshold; and sending the drive mode change to a brake module of thevehicle, the brake module operating at least one other operation moduleof the vehicle to adjust vehicle operation based on the drive modechange.
 2. The method of claim 1, wherein the information includes aprobability score relating to the condition of the vehicle.
 3. Themethod of claim 2, further including: weighting the probability scorebased on a vehicle sensor module hierarchy; and comparing the weightedprobability score to the drive mode threshold to determine the drivemode change.
 4. The method of claim 1, wherein the drive mode thresholdincludes a threshold for an individual drive mode change, the individualdrive mode change including vehicle operation conditions for theindividual drive mode change.
 5. The method of claim 1, furtherincluding receiving output information for vehicle operation conditionverification from the brake module and the at least one other operationmodule of the vehicle.
 6. The method of claim 5, further including thebrake module adjusting vehicle operation conditions until a vehicleoperation condition verification threshold has been satisfied.
 7. Themethod of claim 1, further including receiving a drive mode changecompletion update from the brake module and sending information foranother drive mode change based on the drive mode change completionupdate.
 8. The method of claim 1, further including receivinginformation from an imbedded modem module, the imbedded modem module toreceive information from a network relating to an environmentalcondition of the vehicle.
 9. The method of claim 1, wherein the at leastone other operation module includes at least one of an engine module, asteering module, a suspension module, or a transmission module.
 10. Themethod of claim 9, further including the brake module operating at leastone of the engine module, the steering module, the suspension module, orthe transmission module to adjust vehicle operation based on the drivemode change; and receiving a drive mode completion update from the brakemodule.
 11. An apparatus comprising: a vehicle control unit to: receivefirst information relating to a condition of a vehicle from a vehiclesensor module; compare the first information to a drive mode threshold;select a drive mode change based on the first information satisfying thedrive mode threshold; send the drive mode change to a first operationmodule of the vehicle, the first operation module to operate at leastone other operation module of the vehicle to adjust vehicle operationbased on the drive mode change; and receive output information forvehicle operation condition verification from the first operationmodule, the first operation module to adjust vehicle operationconditions until a vehicle operation condition verification thresholdhas been satisfied.
 12. The apparatus of claim 11, wherein the firstinformation includes a probability score relating to the condition ofthe vehicle, the vehicle control unit to weight the probability scorebased on a vehicle sensor module hierarchy.
 13. The apparatus of claim12, further including the vehicle control unit to compare the weightedprobability score to the drive mode threshold to determine the drivemode change.
 14. The apparatus of claim 11, wherein the drive modethreshold includes a threshold for an individual drive mode change, theindividual drive mode change including vehicle operation conditions forthe individual drive mode change.
 15. The apparatus of claim 11, furtherincluding receiving a drive mode change completion update from the firstoperation module, the vehicle control unit to send information foranother drive mode change based on the drive mode change completionupdate.
 16. The apparatus of claim 11, wherein the first operationmodule is a brake module and the at least one other operation moduleincludes at least one of an engine module, a steering module, asuspension module, or a transmission module.
 17. An non-transitorycomputer readable medium comprising instructions that, when executed,cause a processor to, at least: receive information relating to acondition of a vehicle from a vehicle sensor module; compare theinformation to a drive mode threshold; select a drive mode change basedon the information satisfying the drive mode threshold; and send thedrive mode change to a brake module of the vehicle, the brake module tooperate at least one other operation module of the vehicle to adjustvehicle operation based on the drive mode change.
 18. The computerreadable medium as defined in claim 17, wherein the instructions, whenexecuted, further cause the processor to weight a probability scorereceived in the information based on a vehicle sensor module hierarchy,and compare the weighted probability score to the drive mode thresholdto determine the drive mode change.
 19. The computer readable medium asdefined in claim 17, wherein the drive mode threshold includes athreshold for an individual drive mode change, the individual drive modechange including vehicle operation conditions for the individual drivemode change.
 20. The computer readable medium as defined in claim 17,wherein the instructions, when executed, further cause the processor toreceive output information for vehicle operation condition verification,and adjust vehicle operation conditions until a vehicle operationcondition verification threshold has been satisfied.
 21. The computerreadable medium as defined in claim 20, wherein the instructions, whenexecuted, further cause the processor to receive a drive mode changecompletion update, and send information for another drive mode changebased on the drive mode change completion update.